import { defineStore } from "pinia";
// 不想每次引入把pinia设置为插件自动引入

// optionsAPI
// export const useCounterStore = defineStore("counter", {
//   state: () => {
//     return {
//       count: 0
//     }
//   },
//   actions: {
//     changeCount(num: any) {
//       this.count += num
//     }
//   }
// })

// setupAPI
// export const useCounterStore = defineStore("counter", () => {
//   const count = ref(0)
//   const doubleCount = computed(() => {
//     return count.value * 2
//   })
//   const changeCount = (payload: number) => {
//     // count.value += payload
//     return new Promise((resolve, reject) => {
//       setTimeout(() => {
//         count.value += payload
//         resolve("ok")
//       }, 1000)
//     })
//   }
//   return {
//     count,
//     doubleCount,
//     changeCount
//   }
// })
// import { defineStore } from 'vue';

const store = defineStore('default', () => {
  return {
    state: {
      count: 0,
      username: '',
      deleteDefaultCom: '',
      curIndex: null,
      updateDefaultOption: '',
      formConf: null,
      curRow: null
      // 添加其他全局状态
    },
    mutations: {
      increment(state) {
        state.count++;
      },
      setUsername(state, newName) {
        state.username = newName;
      },
      // 添加其他全局 mutations
    },
    actions: {
      asyncIncrement(context) {
        setTimeout(() => {
          context.commit('increment');
        }, 1000);
      },
      // 添加其他全局 actions
    }
  }
});

export default store;
